NoSQL utility: makeschema

Print database schema tables to STDOUT.

Usage: makeschema [options] table [table ...]

Options:
    --table (-t) [path]
      Print the 'table' schema table as opposed to the default
      'column' schema table. If the optional path argument is not
      specified it defaults to './table'.

    --column (-c) [path]
      Print the 'column' schema table. This is the default. If the
      optional path argument is not specified it defaults to './column'.

    --help (-h)
      Display this help text.

Notes:

Takes a list of one or more files, which are expected to be valid NoSQL
tables, and prints either the associated 'table' or 'column' schema
table to STDOUT. Unless the 'table' schema file is explicitly requested,
the default is to print the 'column' schema file.

If any old schema files are found, the information they contain will be
merged into the newly generated schema files. Since the old schema files
usually contain extra column names that cannot be automatically inferred
by this program, the old schema file column names must be included also
into the newly generated schema, like any other database tables, or some
of the old schema information will go lost.

The output tables produced by this program are meant to be saved to
files and manually checked for validity. In particular, there should
not be multiple Table/Column pairs with the same values in the 'column'
schema file, and if there are any then the database should be manually
checked and fixed as appropriate. This is just one of the checks that
need to be carried out on the newly generate schema, but there are
many others. For instance, there should not be multiple columns with
the same name having the 'K' (primary key) attribute in the 'Flags'
column, as primary keys must be unique across a whole database, and
so on. This may sound complicated to ordinary users, but it is nothing
new for Database Administrators.
Back